Cloud Secure APIを触ってみる
こんにちは。たかやまです。
他のアプリケーションと連携する場合、APIが提供されていると便利です。
もちろんCloud Secureもアプリケーション連携用にAPIでのアクセスを提供しています。
今回はこちらのCloud Secure APIを試してみたいと思います。
事前準備
まずはアクセスにあたり、アクセストークンを発行する必要があります。
ADMIN
-> API Access to Cloud Secure
-> + API Access Token
を開きます。
以下の項目を設定していきます。
- Name
- Description(オプション)
- Token Expires In
- 1 Week
- 1 Month
- 3 Months
- 6 Months
- 1 Year
- Custom(日数指定)
saveすると一度限りアクセストークンが払いだされるので、コピーします。
発行できると一覧にAPIが表示されます。
今回は検証のため有効期限を1 Weekで設定しているため、ステータスにExpiring Soonが表示されています。
API Typeの項目もありますが、現時点ではData Security Forensicsのみ利用可能です。
APIを触ってみる
では、実際にAPIを操作してみたいと思います。
ドキュメントは画面右上にあるAPI Documentation
から確認することができます。
ドキュメントはSwagger UIで提供されています。
現時点では、以下2つのGETメソッドが提供されています。
- cloudsecure_forensics.activities : Cloud SecureのアクティビティForensicsの情報を返す
- cloudsecure_forensics.alerts : Cloud Secureで発生したアラートに関する情報を返す
ドキュメント全量(展開)
Swagger UI
Swagger UIではコンソールからapiを叩くことができるので、試しにcloudsecure_forensics.alerts
を触ってみたいと思います。
メソッドの項目を展開してTry it out
を選択します。
入力モードに変わったら、あとは必要なパラメーターを入力してExecute
を実行します。
パラメーターに誤りがなければ、200
でレスポンスが返ってきます。
Curl
Cloud SecureのSwagger UI以外で、外からcurlで実行したい場合は、最初に発行したアクセストークンを利用します。
curlのコマンドはSwagger UIで生成したものを利用したいと思います。
Swagger UIのcurlコマンドにX-CloudInsights-ApiKey
ヘッダーを追加して、冒頭で生成したものをアクセストークンに設定することでAPIを叩くことができます。
curl -X GET "https://<your_tenant_host_name>/rest/v1/cloudsecure/alerts?limit=1000&timeRange=ONE_WEEK&sort=-alertTimeap&severity=critical&alertType=Ransomware%20Attack&status=New&userDisplayName=root" \ -H "accept: application/json" \ -H "X-CloudInsights-ApiKey: <your_access_token>"
実行ログ(展開)
curl -X GET "https://<your_tenant_host_name>/rest/v1/cloudsecure/alerts?limit=1000&timeRange=ONE_WEEK&sort=-alertTimeap&severity=critical&alertType=Ransomware%20Attack&status=New&userDisplayName=root" \ -H "accept: application/json" \ -H "X-CloudInsights-ApiKey: eyJ...LiB" {"count":2,"limit":1000,"offset":0,"results":[{"actions":[{"actionType":"limit_user_access","lastActionDetails":{"duration":"12","error":"svm2-csdemo: Collector is not running.","expiryTimestamp":1656539139961,"failureCount":1,"mode":"Automatic","restrictionMode":"block","status":"Failure","timestamp":1656495953044,"totalCount":5,"userIps":["10.0.0.25","10.0.0.164","10.0.0.243"]}},{"actionType":"create_snapshot","lastActionDetails":{"mode":"Automatic","status":"Success","timestamp":1656495949536}}],"alertTimestamp":1656495900000,"alertType":"Ransomware Attack","attributes":{"ransomwareDetectedEntityCount":"10835"},"domain":"","id":"e9752145-4bcb-4ac3-acf6-d0d400feb446","note":"","severity":"critical","status":"New","userDisplayName":"root","userId":"C9DD5BE4552273A74EC6B5AAEAADC0C5FBC61D63D53E58F6549A59560155BFE3","userName":"root"},{"actions":[{"actionType":"limit_user_access","lastActionDetails":{"duration":"12","error":"classmethod-dev-fsx-ontap-taka-svm03, svm2-csdemo: Collector is not running.","expiryTimestamp":1656531635934,"failureCount":2,"mode":"Automatic","restrictionMode":"block","status":"Failure","timestamp":1656488452931,"totalCount":5,"userIps":["10.0.0.25","10.0.0.164","10.0.0.243"]}},{"actionType":"create_snapshot","lastActionDetails":{"mode":"Automatic","status":"Success","timestamp":1656487789502}}],"alertTimestamp":1656487740000,"alertType":"Ransomware Attack","attributes":{"ransomwareDetectedEntityCount":"4495"},"domain":"","id":"7553fca1-3e51-4a6e-9c10-27450643cc3a","note":"","severity":"critical","status":"New","userDisplayName":"root","userId":"C9DD5BE4552273A74EC6B5AAEAADC0C5FBC61D63D53E58F6549A59560155BFE3","userName":"root"}]}%
最後に
アプリケーションと連携する際は、Cloud Secure APIをご利用いただければと思います。
個人的にはドキュメントがSwagger UIで提供されているので、サクッとAPIを試せるのが嬉しいポイントです。
以上、たかやまでした。